#ifndef MOTOR_BASE_H
#define MOTOR_BASE_H

#include <QObject>
#include <global_defines.h>

class MotorBase : public QObject
{
    Q_OBJECT
public:
    explicit MotorBase(QObject *parent = nullptr);
    virtual void moveAbsolute(const double &a);
    virtual void moveRelative(const double &a);
    virtual void position();
    virtual void motorQuit();
    virtual void set_Motor_azAngleStep(const double &s);
    virtual void prepare(const SOFTWARESETTINGS mysetting);
    virtual void motorTest(const SOFTWARESETTINGS mysetting);
    virtual void motorTry(const double tryAngle);

signals:
    void motorPrepareOk();
    void positionArrived(const double &s);
    void motorAngle(const double &s);
    void motorClosed();
    void beginMove();
    void moveReady();
    void motorTestOk();
    void motorError(const QString s);
public slots:
};

#endif // MOTOR_BASE_H
